package com.amado.course10Function;

import java.util.Scanner;

public class Function02Type {
	static String[][] myArray = new String[][] { { "李小龙", "222" }, { "张三", "333" } };

	public static void main(String[] args) {
		for (int i = 0; i < 2; i++) {
			for (int j = 0; j < 3; j++) {
				System.out.print(i + " " + j);
			}
			printHello();
		}
		printArray(new String[][] { { "李小龙", "222" }, { "张三", "333" } });
		//有返回值的方法可以用变量接受返回值，也可以不接受。但无返回值的方法一定不能用变量接收
		login("admin", "123");
		//有返回值的方法可以用变量接受返回值，也可以不接受。但无返回值的方法一定不能用变量接收
		boolean isSuccess = login("admin", "123");
		System.out.println("isSuccess = " + isSuccess);
		System.out.println(login() == true ? "登陆成功" : "登陆失败");

	}

	/**
	 * 
	 * 没有参数，没有返回值 printHello()
	 * <p>
	 * printHello是方法名
	 * <p>
	 * 括号为空代表没有参数
	 * <p>
	 * void代表没有返回值
	 */
	public static void printHello() {
		for (int i = 0; i < myArray.length; i++) {
			for (int j = 0; j < myArray[i].length; j++) {
				System.out.print(myArray[i][j]);
			}
			printHello();
		}
	}

	/**
	 * 有参数，没有返回值 printHello(String[][] array)
	 * <p>
	 * String[][] 代表参数类型，必须要以String[][]类型传入， array参数名称，代码可以引用
	 * <p>
	 * void代表没有返回值
	 */
	public static void printArray(String[][] array) {
		for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++) {
				System.out.print(array[i][j] + "\t");
			}
			printHello();
		}
	}

	/**
	 * 有参数有返回值
	 * <p>
	 * userName,password这两上是参数，String 就参数类型，方法内可以引用这两个变量
	 * 
	 * @param userName
	 * @param password
	 * @return 返回是boolean类型，需要接收的时候必须用boolean类型接收
	 */
	public static boolean login(String userName, String password) {
		if ("admin".equals(userName) && "admin".equals(password)) {
			return true;
		}
		return false;
	}

	/**
	 * 无参数，有返回值<p>返回值是boolean类型
	 * 
	 * @return
	 */
	public static boolean login() {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入账号");
		String userName = sc.next();
		System.out.println("请输入密码");
		String password = sc.next();
		if ("admin".equals(userName) && "admin".equals(password)) {
			return true;
		}
		return false;
	}
}
